﻿using QuarryPlanner.Domain.Entities;
using System.Collections.Generic;

namespace QuarryPlanner.Domain.Interfaces.Domain
{
    // Author: Ryan Redburn
    // Created: 10/20/2014

    #region [ Updates ]

    // Author: Ryan Redburn
    // Date: 11/5/2014
    // Revision: Added method definitions for interacting with MobileVehicleExam.

    // Author: Ryan Redburn
    // Date: 11/10/2014
    // Revision: Added method definitions for interacting with WorkPlaceExam.

    #endregion

    /// <summary>
    /// Interface used to define required functionality for a daily report service.
    /// </summary>
    public interface IDailyReportService
    {
        QuarryHours GetQuarryHoursByID(int id);
        List<QuarryHours> GetAllQuarryHours();
        void Save(QuarryHours quarryHours);
        void Delete(QuarryHours quarryHours);

        MobileVehicleExam GetMVEByID(int id);
        List<MobileVehicleExam> GetAllMVE();
        void Save(MobileVehicleExam mve);
        void Delete(MobileVehicleExam mve);

        WorkPlaceExam GetWPEByID(int id);
        List<WorkPlaceExam> GetAllWPE();
        void Save(WorkPlaceExam wpe);
        void Delete(WorkPlaceExam wpe);
    }
}
